Automatically generating an optimal marketing strategy for improving cross sales and upsales of items

ABSTRACT

A computer implemented method, apparatus, and computer usable program product for generating an optimized marketing strategy for improving sales. The process parses event data to identify patterns of events associated with a selection of a selected item by each customer in a plurality of customers and selection of at least one item in a set of items related to the selected item. The process identifies events in the patterns of events that result in a purchase of at least one item in the set of related items by the customers to form optimized events. The process then generates a marketing strategy using the optimized events. The marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of patent application U.S. Ser. No. 11/695,983, filed Apr. 3, 2007, titled “Method and Apparatus for Providing Customized Digital Media Marketing Content Directly to a Customer”, which is incorporated herein by reference.

The present invention is also related to the following applications entitled Identifying Significant Groupings of Customers for Use in Customizing Digital Media Marketing Content Provided Directly to a Customer, application Ser. No. 11/744,024, filed May 3, 2007; Generating Customized Marketing Messages at a Customer Level Using Current Events Data, application Ser. No. 11/769,409, file Jun. 24, 2007; Generating Customized Marketing Messages Using Automatically Generated Customer Identification Data, application Ser. No. 11/756,198, filed May 31, 2007; Generating Customized Marketing Messages for a Customer Using Dynamic Customer Behavior Data, application Ser. No. 11/771,252, filed Jun. 29, 2007, Retail Store Method and System, Robyn Schwartz, Publication No. US 2006/0032915 A1 (filed Aug. 12, 2004); Business Offering Content Delivery, Robyn R. Levine, Publication No. US 2002/0111852 (filed Jan. 16, 2001) all assigned to a common assignee, and all of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is related generally to an improved data processing system, and in particular to a method and apparatus for processing digital video data. More particularly, the present invention is directed to a computer implemented method, apparatus, and computer usable program product for using dynamically gathered digital video data to generate an optimal marketing strategy to improve sales based on patterns of events in the retail facility.

2. Description of the Related Art

In the past, merchants, owners, and operators of retail stores frequently had a personal relationship with their customers. The merchant often knew their customers' names, addresses, marital status, ages of their children, place of employment, anniversaries, birthdays, likes, dislikes, personal preferences, hobbies, ongoing projects, favorite recipes, honesty, and character of their customers. The merchant was able to use this information to cater to customer needs, push sales of items the customer might be likely to need or want based on the customer's personal situation, and develop an overall marketing strategy to maximize sales to the customer.

However, with the continued growth of large cities, the corresponding disappearance of small, rural towns, and the increasing number of large, impersonal chain stores, the merchants and employees of retail businesses rarely recognize regular customers and almost never know the customer's name or any details regarding their customer's personal preferences that might assist the merchant in marketing efforts.

One solution to this problem is directed toward using data mining techniques to gather customer profile data. The customer profile data is used to generate marketing strategies for marketing products to customers. Customer profile data typically includes static information provided by the customer in response to a questionnaire or survey, such as the name, address, telephone number, and gender of customers, as well as types of products preferred by the customer. Demographic data regarding a customer's age, sex, income, career, interests, hobbies, and consumer preferences may also be included in customer profile data.

In an ideal situation, general marketing strategies may be made based on customer profiles and purchase trends. For example, if children tend to be the primary consumers of brightly colored, sugar coated cereals, these items may be placed on lower shelves so that they will be at a child's eye level. In another example, a manufacturer may pay the retail store operator to place the item in a display at the end of an aisle or on a shelf at approximately eye level for an average shopper to increase the visibility and sales of the item.

However, these methods only provide limited and generalized marketing strategies that are directed towards a fairly large segment of the population without taking into account actual customer reactions to product placement in a particular retail store or to other environmental factors that may influence product purchases by actual customers.

In an attempt to better monitor customers in large retail stores, these stores frequently utilize cameras and other audio and/or video monitoring devices to record customers inside the retail store or in the parking lot. A store detective may watch one or more monitors displaying closed circuit images of customers in various areas inside the store to identify shoplifters. However, these solutions require a human user to review the audio and video recordings. In addition, the video and audio recordings are typically used only for store security.

Thus, current solutions do not utilize all of the potential dynamic customer data elements that may be available for generating marketing strategies to optimize purchases by customers. The data elements currently being utilized to generate marketing strategies only provide approximately seventy-five percent (75%) of the needed customer data.

SUMMARY OF THE INVENTION

The illustrative embodiments provide a computer implemented method, apparatus, and computer usable program product for generating an optimized marketing strategy for improving sales. In one embodiment, the process identifies an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item. The process identifies at least one item in the plurality of items that is related to the selected item to form a set of related items. The process parses event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers. The event data comprises metadata describing events associated with the plurality of customers and the plurality of items. The process parses the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers. The process identifies events in the patterns of events that result in a purchase of at least one item in the set of related items by the customers to form optimized events. The purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue. The process then generates a marketing strategy using the optimized events. The marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:

FIG. 1 is a pictorial representation of a network of data processing systems in which illustrative embodiments may be implemented;

FIG. 2 is a block diagram of a digital customer marketing environment in which illustrative embodiments may be implemented;

FIG. 3 is a block diagram of a data processing system in which illustrative embodiments may be implemented;

FIG. 4 is a diagram of a display device in the form of a personal digital assistant (PDA) in accordance with a preferred embodiment of the present invention;

FIG. 5 is a block diagram of a personal digital assistant display device in accordance with a preferred embodiment of the present invention;

FIG. 6 is a block diagram of a data processing system for analyzing event data to identify event patterns for generating a marketing strategy in accordance with an illustrative embodiment;

FIG. 7 is a block diagram of a dynamic marketing message assembly transmitting a customized marketing message to a set of display devices in accordance with an illustrative embodiment;

FIG. 8 is a block diagram of an identification tag reader for identifying items selected by a customer in accordance with an illustrative embodiment;

FIG. 9 is a block diagram illustrating an external marketing manager for generating current events data in accordance with an illustrative embodiment;

FIG. 10 is a block diagram illustrating a smart detection engine for generating customer identification data and selected item data in accordance with an illustrative embodiment;

FIG. 11 is a block diagram of a unifying data model for processing event data in accordance with an illustrative embodiment;

FIG. 12 is a block diagram illustrating a list of upsale items corresponding to selected items in accordance with an illustrative embodiment;

FIG. 13 is a block diagram illustrating a list of correlated items for promoting cross sales of related items in accordance with an illustrative embodiment;

FIG. 14 is a flowchart illustrating a smart detection system generating event data in accordance with an illustrative embodiment;

FIG. 15 is a flowchart illustrating a process for generating an optimized marketing model in accordance with an illustrative embodiment;

FIG. 16 is a flowchart illustrating a process for monitoring for a change in biometric readings associated with a customer in accordance with an illustrative embodiment; and

FIG. 17 is a flowchart illustrating a process for implementing a marketing strategy to improve upsales and cross-sales of items in accordance with an illustrative embodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

With reference now to the figures and in particular with reference to FIGS. 1-5, exemplary diagrams of data processing environments are provided in which illustrative embodiments may be implemented. It should be appreciated that FIGS. 1-5 are only exemplary and are not intended to assert or imply any limitation with regard to the environments in which different embodiments may be implemented. Many modifications to the depicted environments may be made.

With reference now to the figures, FIG. 1 depicts a pictorial representation of a network of data processing systems in which illustrative embodiments may be implemented. Network data processing system 100 is a network of computers in which embodiments may be implemented. Network data processing system 100 contains network 102, which is the medium used to provide communications links between various devices and computers connected together within network data processing system 100. Network 102 may include connections, such as wire, wireless communication links, or fiber optic cables.

In the depicted example, server 104 and server 106 connect to network 102 along with storage area network (SAN) 108. Storage area network 108 is a network connecting one or more data storage devices to one or more servers, such as servers 104 and 106. A data storage device, may include, but is not limited to, tape libraries, disk array controllers, tape drives, flash memory, a hard disk, and/or any other type of storage device for storing data. Storage area network 108 allows a computing device, such as client 110 to connect to a remote data storage device over a network for block level input/output.

In addition, clients 110 and 112 connect to network 102. These clients 110 and 112 may be, for example, personal computers or network computers. In the depicted example, server 104 provides data, such as boot files, operating system images, and applications to clients 110 and 112. Clients 110 and 112 are clients to server 104 in this example.

Digital customer marketing environment 114 is a retail environment that is connected to network 102. A customer may view, select order, and/or purchase one or more items in digital customer marketing environment 114. Digital customer marketing environment 114 may include one or more facilities, buildings, or other structures for wholly or partially containing items.

The items in digital customer marketing environment 114 may include, but are not limited to, consumables, comestibles, clothing, shoes, toys, cleaning products, household items, machines, any type of manufactured items, entertainment and/or educational materials, as well as entrance or admittance to attend or receive an entertainment or educational activity or event. Items for purchase could also include services, such as, without limitation, dry cleaning services, food delivery, personal grooming services, such as manicures and haircuts, cooking demonstrations, or any other services.

Comestibles include solid, liquid, and/or semi-solid food and beverage items. Comestibles may be, but are not limited to, meat products, dairy products, fruits, vegetables, bread, pasta, pre-prepared or ready-to-eat items, as well as unprepared or uncooked food and/or beverage items. For example, a comestible includes, without limitation, a box of cereal, a steak, tea bags, a cup of tea that is ready to drink, popcorn, pizza, candy, or any other edible food or beverage items.

An entertainment or educational activity, event, or service may include, but is not limited to, a sporting event, a music concert, a seminar, a convention, a movie, a ride, a game, a theatrical performance, and/or any other performance, show, or spectacle for entertainment or education of customers. For example, entertainment or educational activity or event could include, without limitation, the purchase of seating at a football game, purchase of a ride on a roller coaster, purchase of a manicure, or purchase of admission to view a film.

Digital customer marketing environment 114 may also includes a parking facility for parking cars, trucks, motorcycles, bicycles, or other vehicles for conveying customers to and from digital customer marketing environment 114. A parking facility may include an open air parking lot, an underground parking garage, an above ground parking garage, an automated parking garage, and/or any other area designated for parking customer vehicles.

For example, digital customer marketing environment 114 may be, but is not limited to, a grocery store, a retail store, a department store, an indoor mall, an outdoor mall, a combination of indoor and outdoor retail areas, a farmer's market, a convention center, a sports arena or stadium, an airport, a bus depot, a train station, a marina, a hotel, fair grounds, an amusement park, a water park, and/or a zoo.

Digital customer marketing environment 114 encompasses a range or area in which marketing messages may be transmitted to a digital display device for presentation to a customer within digital customer marketing environment. Digital multimedia management software is used to manage and/or enable generation, management, transmission, and/or display of marketing messages within digital customer marketing environment. Examples of digital multimedia management software include, but are not limited to, Scala® digital media/digital signage software, EK3® digital media/digital signage software, and/or Allure digital media software.

In the depicted example, network data processing system 100 is the Internet with network 102 representing a worldwide collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another. At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers, consisting of thousands of commercial, governmental, educational and other computer systems that route data and messages. Of course, network data processing system 100 also may be implemented as a number of different types of networks, such as, without limitation, an intranet, an Ethernet, a local area network (LAN), and/or a wide area network (WAN).

Network data processing system 100 may also include additional data storage devices in addition to or instead of storage area network 108, such as, without limitation, one or more hard disks, compact disks (CD), compact disk rewritable (CD-RW), flash memory, compact disk read-only memory (CD ROM), non-volatile random access memory (NV-RAM), and/or any other type of storage device for storing data.

FIG. 1 is intended as an example, and not as an architectural limitation for different embodiments. Network data processing system 100 may include additional servers, clients, data storage devices, and/or other devices not shown. For example, server 104 may also include devices not depicted in FIG. 1, such as, without limitation, a local data storage device.

In another embodiment, digital customer marketing environment 114 includes one or more servers located on-site at digital customer marketing environment. In this example, network 102 is optional. In other words, if one or more servers and/or data processing systems are located at digital customer marketing environment 114, the illustrative embodiments are capable of being implemented without requiring a network connection to computers located remotely to digital customer marketing environment 114.

A merchant, owner, operator, manager or other employee associated with digital customer marketing environment 114 typically wants to market products or services to customers in the most convenient and efficient manner possible so as to maximize resulting purchases by the customer and increase sales, profits, and/or revenue. Therefore, the aspects of the illustrative embodiments recognize that it is advantageous for the merchant to have as much information as possible describing one or more customers and to anticipate items that the customer may wish to purchase prior to the customer selecting those items for purchase in order to identify the best items to market to the customer and personalize the merchant's marketing strategy to that particular customer.

Therefore, the illustrative embodiments provide a computer implemented method, apparatus, and computer program product for generating an optimized marketing strategy for improving sales. It will be appreciated by one skilled in the art that the words “optimize”, “optimization” and related terms are terms of art that refer to improvements in speed and/or efficiency of a computer program, and do not purport to indicate that a computer program has achieved, or is capable of achieving, an “optimal” or perfectly speedy/perfectly efficient state.

In one embodiment, the process identifies an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item. The process identifies at least one item in the plurality of items that is related to the selected item to form a set of related items.

The process parses event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers. The event data comprises metadata describing events associated with the plurality of customers and the plurality of items. Events associated with the plurality of customers and the plurality of items includes, without limitation, metadata describing actions taken by the customers, a pace at which the customers walk, an amount of time taken to select an item for purchase, an appearance of the customers, a behavior of the customers, or any other events associated with the customers.

An appearance of the customers includes, without limitation, a description of the customers clothing and accessories. For example, event data can include, without limitation, metadata indicating a customer is wearing a trench coat on a hot summer day, wearing sunglasses indoors, carrying a blunt object, knife, gun, or other weapon, or other data describing customers' appearance. Data describing customer appearance also includes data indicating whether a customer is dressed casually or in a business suit, and other details regarding the customer's appearance.

A behavior of customers can include, without limitation, data describing actions such as, without limitation, placing one or more items in the customer's pocket instead of in a shopping container, avoiding store employees, loitering in a particular area for an extended period of time, rearranging items on store shelves, opening packing associated with items that have not been purchased, eating food that has not been purchased, shivering or buttoning up a coat near an air conditioning vent or near a freezer section, slowing a pace of walking or stopping to view a marketing message on a display device, slowing or stopping due to an obstruction in a walkway, slowing or stopping due to a shopping container becoming stuck or lodged against another object in a walkway, searching for a shopping container, searching for an employee, or any other behaviors.

The process parses the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers. The process identifies events in the patterns of events that result in a purchase of at least one item in the set of related items by the customers to form optimized events. For example, the patterns of events may indicate that customers selecting a first item tend to be in a hurry while customers selecting a second item for purchase tend to be shopping at a more leisurely rate and taking time to consider product attributes, such as, without limitation, item pricing, product functionality, and/or product ingredients.

The purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue. The process then generates a marketing strategy using the optimized events. The marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers. A strategy is an action or event that tends to encourage or increase purchases by the customers.

A strategy includes, without limitation, location of display devices, location of product displays, location of signs, type of music played, location of items on shelves, location of store employees, rounds made by store employees, location of store security, location of devices that disperse a chemical producing odor, a type of chemical producing odor to be dispersed, a temperature range for air conditioning and heating, and/or any other actions or events in the retail facility.

For example, if a retail store sells movies on video and microwaveable popcorn, a marketing strategy could include placing a device to disperse an odor of buttered popcorn at a location near one or more of the best selling movies. The strategy of providing a smell of the popcorn for customers increases sales of the microwave popcorn by the retail store.

In another embodiment, the process uses biometric data for the plurality of customers to generate the marketing strategy. Biometric data is data describing a set of physiological responses of the customers, a status state of a customer, fingerprints, thumbprints, or a measurement of a vital statistics of the customer over a given period of time.

The vital statistics of the customers includes a heart rate over a period of time, respiratory rate, and/or blood pressure. The set of physiological responses includes, without limitation, customer's heart rate over a period of time, a fingerprint, a retinal pattern, a voice stress measurement, a measurement of a change in pupil dilation as compared to changes in the ambient light levels, body temperature, a change in skin temperature, a change in body temperature, a rate or amount of perspiration, respiratory rate, voice stress for the voice of the customer, and/or any other measurement of a customer's physical traits or physical responses.

The physiological responses are used to determine if one or more customers are reacting to external stimuli, such as a marketing message, a display device, an item offered for sale, or any other environmental element associated with the retail facility. A change in a biometric reading associated with a customer is compared with a threshold or baseline reading.

If the change in biometric readings exceeds or falls below the threshold, the process determines that the customer was reacting to something in the environment. In response to a determination that the customer was viewing an item, an item display, a display device, a marketing message, or some other object when the change in the biometric reading occurred, the process associates the change in the biometric reading with the item or the marketing message to form the biometric data. The change in the biometric readings may also be associated with a temperature change or odor in the environment. For example, if the customer enters a freezer section of the retail facility, a change in the customer's biometric readings may be attributed to the change in the ambient temperature.

For example, if the biometric data indicates that customers are reacting to marketing content displayed on a first display device located in the center of a first aisle but customers are not reacting to marketing content displayed on a second display device located at the end of an aisle, the process generates a strategy that indicates the second display device should be moved to the center of the second aisle.

In one embodiment, at least one item in the set of related items is an upsale item. An upsale item is an item that provides a same basic functionality as the selected item. For example, an upsale item may be a different size than a size of the selected item, a different brand than a brand of the selected item, a different number of constituent parts than a number of constituent parts of the selected item, a different price than a price of the selected item, a different packaging than a packaging of the selected item, and/or an additional feature that is not provided by the selected item. A sale of the upsale item to the customers produces a greater amount of revenue or a greater amount of profit than a sale of the selected item. The optimized marketing strategy provides strategies to prompt or encourage the customers to purchase the upsale item instead of the selected item.

In another embodiment, at least one item in the set of related items is a correlated item. The correlated item provides a different basic functionality than the selected item. For example, if a customer selects dip for purchase, a correlated item for dip is potato chips. The potato chips provide a different functionality than dip but potato chips are typically purchased with dip. The marketing strategy in this example provides strategies to prompt or encourage the customers to purchase the correlated item in addition to a purchase of the selected item.

Correlated items are identified by first identifying the plurality of items and the plurality of customers. The process analyzes the plurality of items using a set of correlation analysis techniques to identify different items that are purchased in correlation with one or more other items in the plurality of items to form the set of related items. A correlation analysis technique is any analysis technique that permits the process to correlate sales of different items and identify items that are frequently purchased in conjunction with or simultaneously with a different item.

FIG. 2 is a block diagram of a digital customer marketing environment in which illustrative embodiments may be implemented. Digital customer marketing environment 200 is a marketing environment, such as digital customer marketing environment 114 in FIG. 1.

Retail facility 202 is a facility for wholly or partially storing, enclosing, or displaying items for marketing, viewing, selection, order, and/or purchase by a customer. For example, retail facility 202 may be, without limitation, a retail store, supermarket, grocery store, a marketplace, a food pavilion, a book store, clothing store, department store, or shopping mall. Retail facility 202 may also include, without limitation, a sports arena, amusement park, water park, convention center, trade center, or any other facility for housing, storing, displaying, offering, providing, and/or selling items. In this example, retail facility 202 is a grocery store or a department store.

Detectors 204-210 are devices for gathering data associated with a set of customers, including, but not limited to, at least one camera, motion sensor device/motion detector, sonar detection device, microphone, sound/audio recording device, audio detection device, a voice recognition system, a heat sensor/thermal sensor, a seismograph, a pressure sensor, a device for detecting odors, scents, and/or fragrances, a radio frequency identification (RFID) tag reader, a global positioning system (GPS) receiver, and/or any other detection device for detecting a presence of a human, animal, object, and/or vehicle located outside of retail facility 202. A set of customers is a set of one or more customers. A vehicle is any type of vehicle for conveying people, animals, or objects to a destination. A vehicle may include, but is not limited to, a car, bus, truck, motorcycle, boat, airplane, or any other type of vehicle.

A heat sensor is any known or available device for detecting heat, such as, but not limited to, a thermal imaging device for generating images showing thermal heat patterns. A heat sensor can detect body heat generated by a human or animal and/or heat generated by a vehicle, such as an automobile or a motorcycle. A set of heat sensors may include one or more heat sensors.

A motion detector may be implemented in any type of known or available motion detector device. A motion detector device may include, but is not limited to, one or more motion detector devices using a photo-sensor, radar or microwave radio detector, or ultrasonic sound waves.

A motion detector using ultrasonic sound waves transmits or emits ultrasonic sound waves. The motion detector detects or measures the ultrasonic sound waves that are reflected back to the motion detector. If a human, animal, or other object moves within the range of the ultrasonic sound waves generated by the motion detector, the motion detector detects a change in the echo of sound waves reflected back. This change in the echo indicates the presence of a human, animal, or other object moving within the range of the motion detector.

In one example, a motion detector device using a radar or microwave radio detector may detect motion by sending out a burst of microwave radio energy and detecting the same microwave radio waves when the radio waves are deflected back to the motion detector. If a human, animal, or other object moves into the range of the microwave radio energy field generated by the motion detector, the amount of energy reflected back to the motion detector is changed. The motion detector identifies this change in reflected energy as an indication of the presence of a human, animal, or other object moving within the motion detectors range.

A motion detector device, using a photo-sensor, detects motion by sending a beam of light across a space into a photo-sensor. The photo-sensor detects when a human, animal, or object breaks or interrupts the beam of light as the human, animal, or object by moving in-between the source of the beam of light and the photo-sensor. These examples of motion detectors are presented for illustrative purposes only. A motion detector in accordance with the illustrative embodiments may include any type of known or available motion detector and is not limited to the motion detectors described herein.

A pressure sensor detector may be, for example, a device for detecting a change in weight or mass associated with the pressure sensor. For example, if one or more pressure sensors are imbedded in a sidewalk, Astroturf, or floor mat, the pressure sensor detects a change in weight or mass when a human customer or animal steps on the pressure sensor. The pressure sensor may also detect when a human customer or animal steps off of the pressure sensor. In another example, one or more pressure sensors are embedded in a parking lot, and the pressure sensors detect a weight and/or mass associated with a vehicle when the vehicle is in contact with the pressure sensor. A vehicle may be in contact with one or more pressure sensors when the vehicle is driving over one or more pressure sensors and/or when a vehicle is parked on top of one or more pressure sensors.

A camera may be any type of known or available camera, including, but not limited to, a video camera for taking moving video images, a digital camera capable of taking still pictures and/or a continuous video stream, a stereo camera, a web camera, and/or any other imaging device capable of capturing a view of whatever appears within the camera's range for remote monitoring, viewing, or recording of a distant or obscured person, object, or area.

Various lenses, filters, and other optical devices such as zoom lenses, wide angle lenses, mirrors, prisms and the like may also be used with an image capture device to assist in capturing the desired view. The image capture device may be fixed in a particular orientation and configuration, or it may, along with any optical devices, be programmable in orientation, light sensitivity level, focus or other parameters. Programming data may be provided via a computing device, such as server 104 in FIG. 1.

A camera may also be a stationary camera and/or non-stationary camera. A non-stationary camera is a camera that is capable of moving and/or rotating along one or more directions, such as up, down, left, right, and/or rotate about an axis of rotation. The camera may also be capable of moving to follow or track a person, animal, or object in motion. In other words, the camera may be capable of moving about an axis of rotation in order to keep a customer, animal, or object within a viewing range of the camera lens. In this example, detectors 204-210 are non-stationary digital video cameras. The camera may be coupled to and/or in communication with the analysis server. In addition, more than one image capture device may be operated simultaneously without departing from the illustrative embodiments of the present invention.

In this example, detectors 204-210 are located at locations along an outer perimeter of digital customer marketing environment 200. However, detectors 204-210 may be located at any position outside retail facility 202 to detect customers before the customers enter retail facility 202 and/or when customers exit retail facility 202.

Detectors 204-210 are connected to an analysis server on a data processing system, such as network data processing system 100 in FIG. 1. The analysis server is illustrated and described in greater detail in FIG. 6 below. The analysis server includes software for analyzing digital images and other data captured by detectors 204-210 to track and/or visually identify retail items, containers, and/or customers outside retail facility 202. Attachment of identifying marks may be part of this visual identification in the illustrative embodiments.

In this example, four detectors, detectors 204-210, are located outside retail facility 202. However, any number of detectors may be used to detect, track, and/or gather dynamic data associated with customers outside retail facility 202. For example, a single detector, as well as two or more detectors may be used outside retail facility 202 for tracking customers entering and/or exiting retail facility 202. The dynamic customer data gathered by the one or more detectors in detectors 204-210 is referred to herein as external data.

Retail facility 202 may also optionally include set of detectors 212 inside retail facility 202. Set of detectors 212 is a set of one or more detectors, such as detectors 204-210. Set of detectors 212 are detectors for gathering dynamic data inside retail facility 202. The dynamic data gathered by set of detectors 212 includes, without limitation, grouping data, identification data, and/or customer behavior data. The dynamic data associated with a customer that is captured by one or more detectors in set of detectors 212 is referred to herein as internal data.

Set of detectors 212 may be located at any location within retail facility 202. In addition, set of detectors 212 may include multiple detectors located at differing locations within retail facility 202. For example, a detector in set of detectors 212 may be located, without limitation, at an entrance to retail facility 202, on one or more shelves in retail facility 202, and/or on one or more doors or doorways in retail facility 202. In one embodiment, set of detectors 212 includes one or more cameras or other image capture devices for tracking and/or identifying items, containers for items, shopping containers, customers, shopping companions of the customer, shopping carts, and/or store employees inside retail facility 202.

Display devices 214 are multimedia devices for displaying marketing messages to customers. Display devices 214 may be any type of display device for presenting a text, graphic, audio, video, and/or any combination of text, graphics, audio, and video to a customer. In this example, display devices 214 are located inside retail facility 202. Display devices 214 may be one or more display devices located within retail facility 202 for use and/or viewing by one or more customers. The images shown on display devices 214 are changed in real time in response to various events such as, without limitation, the time of day, the day of the week, a particular customer approaching the shelves or rack, items already placed inside container 220 by the customer, and dynamic data for the customer.

Display devices 216 located outside retail facility 216 include at least one display device. The display device(s) may be, without limitation, a display screen or a kiosk located in a parking lot, queue line, and/or other area outside of retail facility 202. Display devices 216 outside retail facility 202 may be used in the absence of display devices 214 inside retail facility 202 or in addition to display devices 214.

Display device 226 may be operatively connected to a data processing system via wireless, infrared, radio, or other connection technologies known in the art, for the purpose of transferring data to be displayed on display device 226. The data processing system includes the analysis server for analyzing dynamic external customer data obtained from detectors 204-210 and set of detectors 212, as well as static customer data obtained from one or more databases storing data associated with customers.

Container 220 is a container for holding, carrying, transporting, or moving one or more items. For example, container 220 may be, without limitation, a shopping cart, a shopping bag, a shopping basket, and/or any other type of container for holding items. In this example, container 220 is a shopping cart. In this example in FIG. 2, only one container 220 is depicted. However, any number of containers may be used inside and/or outside retail facility 202 for holding, carrying, transporting, or moving items selected by customers.

Container 220 may also optionally include identification tag 224. Identification tag 224 is a tag for identifying container 220, locating container 220 within digital customer marketing environment 200, either inside or outside retail facility 202, and/or associating container 220 with a particular customer. For example, identification tag 224 may be a radio frequency identification (RFID) tag, a universal product code (UPC) tag, a global positioning system (GPS) tag, and/or any other type of identification tag for identifying, locating, and/or tracking a container.

Container 220 may also include display device 226 coupled to, mounted on, attached to, or imbedded within container 220. Display device 226 is a multimedia display device for displaying textual, graphical, video, and/or audio marketing messages to a customer. For example, display device 226 may be a digital display screen or personal digital assistant attached to a handle, front, back, or side member of container 220.

Container 220 may optionally include an identification tag reader (not shown) for receiving data from identification tags 230 associated with retail items 228. Retail items 228 are items of merchandise for sale. Retail items 228 may be displayed on a display shelf (not shown) located in retail facility 202. Other items of merchandise may be for sale, such as, without limitation, food, beverages, shoes, clothing, household goods, decorative items, or sporting goods, may be hung from display racks, displayed in cabinets, on shelves, or in refrigeration units (not shown). Any other type of merchandise display arrangement known in the retail trade may also be used in accordance with the illustrative embodiments. For example, display shelves or racks may include, in addition to retail items 228, various advertising displays, images, or postings.

Retail items 228 may be viewed or identified by the illustrative embodiments using an image capture device or other detector in set of detectors 212. To facilitate identification, items may have attached identification tags 230. Identification tags 230 are tags associated with one or more retail items for identifying the item and/or location of the item. For example, identification tags 230 may be, without limitation, a bar code pattern, such as a universal product code (UPC) or European article number (EAN), a radio frequency identification (RFID) tag, or other optical identification tag, depending on the capabilities of the image capture device and associated data processing system to process the information and make an identification of retail items 228. In some embodiments, an optical identification may be attached to more than one side of a given item.

Biometric devices 235 is a set of one or more biometric devices for gathering biometric data associated with one or more customers. Biometric devices 235 includes, without limitation, a fingerprint scanner, a retinal scanner, a voice analysis device, a device for measuring heart rate, respiration, blood pressure, body temperature, or a device for capturing any other biometric reading associated with a customer.

The data processing system, discussed in greater detail in FIG. 3 below, includes associated memory which may be an integral part, such as the operating memory, of the data processing system or externally accessible memory. Software for tracking objects may reside in the memory and run on the processor. The software is capable of tracking retail items 228, as a customer removes an item in retail items 228 from its display position and places the item into container 220. Likewise, the tracking software can track items which are being removed from container 220 and placed elsewhere in the retail store, whether placed back in their original display position or anywhere else including into another container. The tracking software can also track the position of container 220 and the customer.

The software can track retail items 228 by using data from one or more of detectors 204-210 located externally to retail facility, internal data captured by one or more detectors in set of detectors 212 located internally to retail facility 202, such as identification data received from identification tags 230 and/or identification data received from identification tag 224.

The software in the data processing system keeps a list of which items have been placed in each shopping container, such as container 220. The list is stored in a database, such as, without limitation, a spreadsheet, relational database, hierarchical database or the like. The database may be stored in the operating memory of the data processing system, externally on a secondary data storage device, locally on a recordable medium such as a hard drive, floppy drive, CD ROM, DVD device, remotely on a storage area network, such as storage area network 108 in FIG. 1, or in any other type of storage device.

The lists of items in container 220 are updated frequently enough to maintain a dynamic, accurate, real time listing of the contents of each container as customers add and remove items from containers, such as container 220. The listings of items in containers are also made available to whatever inventory system is used in retail facility 202. Such listings represent an up-to-the-minute view of which items are still available for sale, for example, to on-line shopping customers or customers physically located at retail facility 202. The listings may also provide a demand side trigger back to the supplier of each item. In other words, the listing of items in customer shopping containers can be used to update inventories, determine current stock available for sale to customers, and/or identification of items that need to be restocked or replenished.

At any time, the customer using container 220 may request to see a listing of the contents of container 220 by entering a query at a user interface to the data processing system. The user interface may be available at a kiosk, computer, personal digital assistant, or other computing device connected to the data processing system via a network connection. The user interface may also be coupled to a display device, such as, at a display device in display devices 214, display devices 216, or display device 226 associated with container 220. The customer may also make such a query after leaving the retail store. For example, a query may be made using a portable device or a home computer workstation.

The listing is then displayed at a location where it may be viewed by the customer on a display device. The listing may include the quantity of each item in container 220, as well as the brand, price of each item, discount or amount saved off the regular price of each item, and a total price for all items in container 220. Other data may also be displayed as part of the listing, such as, additional incentives to purchase one or more other items.

When the customer is finished shopping, the customer may proceed to a point-of-sale checkout station. The checkout station may be coupled to the data processing system, in which case, the items in container 220 are already known to the data processing system due to the dynamic listing of items in container 220 that is maintained as the customer shops in digital customer marketing environment 200. Thus, there is no need for an employee, customer, or other person to scan each item in container 220 to complete the purchase of each item, as is commonly done today. In this example, the customer merely arranges for payment of the total, for example by use of a smart card, credit card, debit card, cash, or other payment method. In some embodiments, it may not be necessary to empty container 220 at the retail facility at all if container 220 is a minimal cost item which can be kept by the customer.

In other embodiments, container 220 belongs to the customer. The customer brings container 220 to retail facility 202 at the start of the shopping session. In another embodiment, container 220 belongs to retail facility 202 and must be returned before the customer leaves digital customer marketing environment 200.

In another example, when the customer is finished shopping, the customer may complete checkout either in-aisle or from a final or terminal-based checkout position in the store using a transactional device which may be integral with container 220 or associated temporarily to container 220. The customer may also complete the transaction using a consumer owned computing device, such as a laptop, cellular telephone, or personal digital assistant that is connected to the data processing system via a network connection.

The customer may also make payment by swiping a magnetic strip on a card, using any known or available radio frequency identification (RFID) enabled payment device, or using a biometric device for identifying the customer by the customer's fingerprint, voiceprint, thumbprint, and/or retinal pattern. In such as case, the customer's account is automatically charged after the customer is identified.

The transactional device may also be a portable device such as a laptop computer, palm device, or any other portable device specially configured for such in-aisle checkout service, whether integral with container 220 or separately operable. In this example, the transactional device connects to the data processing system via a network connection to complete the purchase transaction at check out time.

Checkout may be performed in-aisle or at the end of the shopping trip whether from any point or from a specified point of transaction. As noted above, checkout transactional devices may be stationary shared devices or portable or mobile devices offered to the customer from the store or may be devices brought to the store by the customer, which are compatible with the data processing system and software residing on the data processing system.

Thus, in this depicted example, when a customer enters digital customer marketing environment but before the customer enters retail facility 202, such as a retail store, the customer is detected and identified by one or more detectors in detectors 204-210 to generate external data. The customer identification may be an exact identification of the customer by name, identification by an identifier, or an anonymous identification that is used to track the customer even though the customer's exact name and identity is not known. If the customer takes a shopping container before entering retail facility 202, the shopping container is also identified. In some embodiments, the customer may be identified through identification of container 220.

An analysis server in a data processing system associated with retail facility 202 begins performing data mining on available static customer data, such as, but not limited to, customer profile information and demographic information, for use in generating customized marketing messages targeted to the customer. In one embodiment, the customer is presented with customized digital marketing messages on one or more display devices in display devices 216 located externally to retail facility 202 before the customer enters retail facility 202.

The customer is tracked using image data and/or other detection data captured by detectors 204-210 as the customer enters retail facility 202. The customer is identified and tracked inside retail facility 202 by one or more detectors inside the facility, such as set of detectors 212.

When the customer enters retail facility 202, the customer is typically offered, provided, or permitted to take shopping container 220 for use during shopping.

When the customer takes a shopping container, such as container 220, the analysis server uses data from set of detectors 212, such as, identification data from identification tags 230 and 224, to track container 220 and items selected by the customer and placed in container 220.

As a result, an item selected by the customer, for example, as the customer removes the item from its stationary position on a store display, is identified. The selected item may be traced visually by a camera, tracked by another type of detector in set of detectors 212 and/or using identification data from identification tags 230. The item is tracked until the customer places it in container 220 to form a selected item.

Thus, a selected item is identified when a customer removes an item from a store display, such as a shelf, display counter, basket, or hanger. In another embodiment, the selected item is identified when the customer places the item in the customer's shopping basket, shopping bag, or shopping cart. The analysis server then selects one or more upsale items related to the selected items for marketing to the customer. In another embodiment, the analysis server selects one or more cross-sale items correlated to the selected item. The analysis server stores a listing of selected items placed in the shopping container.

Container 220 may contain a digital media display, such as display device 226, mounted on container 220 and/or customer may be offered a handheld digital media display device, such as a display device in display devices 214. In the alternative, the customer may be encouraged to use strategically placed kiosks running digital media marketing messages throughout retail facility 202. Display device 226, 214, and/or 216 may include a verification device for verifying an identity of the customer.

For example, display device 214 may include a radio frequency identification tag reader 232 for reading a radio frequency identification tag, a smart card reader for reading a smart card, or a card reader for reading a specialized store loyalty or frequent customer card. Once the customer has been verified, the data processing system retrieves past purchase history, total potential wallet-share, shopper segmentation information, customer profile data, granular demographic data for the customer, and/or any other available customer data elements using known or available data retrieval and/or data mining techniques. These customer data elements are analyzed using at least one data model to determine appropriate digital media content to be pushed, on-demand, throughout the store to customers viewing display devices 214, 216, and/or display device 226.

The customer is provided with incentives to use display devices 214, 216, and/or display device 226 to obtain marketing incentives, promotional offers, and discounts for upsale items and/or cross-sale items correlated to one or more selected items. When the customer has finished shopping, the customer may be provided with a list of savings or “tiered” accounting of savings over the regular price of purchased items if a display device had not been used to view and use customized digital marketing messages.

In this example, a single container and a single customer is described. However, the aspects of the illustrative embodiments may also be used to track multiple containers and multiple customers simultaneously. In this case, the analysis server will store a separate listing of selected items for each active customer. As noted above, the listings may be stored in a database. The listing of items in a given container is displayed to a customer, employee, agent, or other customer in response to a query. The listing may be displayed to a customer at any time, either while actively shopping, during check-out, or after the customer leaves retail facility 202.

This process provides an intelligent guided selling methodology to optimize customer throughput in the store, thereby maximizing or optimizing total retail content and/or retail sales, profit, and/or revenue for retail facility 202.

Next, FIG. 3 is a block diagram of a data processing system in which illustrative embodiments may be implemented. Data processing system 300 is an example of a computer, such as server 104 or client 110 in FIG. 1, in which computer usable code or instructions implementing the processes may be located for the illustrative embodiments. In this example, data is transmitted from data processing system 300 to the retail facility over a network, such as network 102 in FIG. 1. In another embodiment, data processing system 300 is located on-site at the retail facility.

In the depicted example, data processing system 300 employs a hub architecture including a north bridge and memory controller hub (MCH) 302 and a south bridge and input/output (I/O) controller hub (ICH) 304. Processing unit 306, main memory 308, and graphics processor 310 are coupled to north bridge and memory controller hub 302. Processing unit 306 may contain one or more processors and even may be implemented using one or more heterogeneous processor systems. Graphics processor 310 may be coupled to the MCH through an accelerated graphics port (AGP), for example.

In the depicted example, local area network (LAN) adapter 312 is coupled to south bridge and I/O controller hub 304 and audio adapter 316, keyboard and mouse adapter 320, modem 322, read only memory (ROM) 324, universal serial bus (USB) ports and other communications ports 332, and PCI/PCIe devices 334 are coupled to south bridge and I/O controller hub 304 through bus 338, and hard disk drive (HDD) 326 and CD-ROM drive 330 are coupled to south bridge and I/O controller hub 304 through bus 340. PCI/PCIe devices may include, for example, Ethernet adapters, add-in cards, and PC cards for notebook computers. PCI uses a card bus controller, while PCIe does not. ROM 324 may be, for example, a flash binary input/output system (BIOS). Hard disk drive 326 and CD-ROM drive 330 may use, for example, an integrated drive electronics (IDE) or serial advanced technology attachment (SATA) interface. A super I/O (SIO) device 336 may be coupled to south bridge and I/O controller hub 304.

An operating system runs on processing unit 306 and coordinates and provides control of various components within data processing system 300 in FIG. 3. The operating system may be a commercially available operating system such as Microsoft® Windows® XP (Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both). An object oriented programming system, such as the Java™ programming system, may run in conjunction with the operating system and provides calls to the operating system from Java programs or applications executing on data processing system 300. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as hard disk drive 326, and may be loaded into main memory 308 for execution by processing unit 306. The processes of the illustrative embodiments may be performed by processing unit 306 using computer implemented instructions, which may be located in a memory such as, for example, main memory 308, read only memory 324, or in one or more peripheral devices.

In some illustrative examples, data processing system 300 may be a personal digital assistant (PDA), which is generally configured with flash memory to provide non-volatile memory for storing operating system files and/or customer-generated data. A bus system may be comprised of one or more buses, such as a system bus, an I/O bus and a PCI bus. Of course the bus system may be implemented using any type of communications fabric or architecture that provides for a transfer of data between different components or devices attached to the fabric or architecture. A communications unit may include one or more devices used to transmit and receive data, such as a modem or a network adapter. A memory may be, for example, main memory 308 or a cache such as found in north bridge and memory controller hub 302. A processing unit may include one or more processors or CPUs.

With reference now to FIG. 4, a diagram of a display device in the form of a personal digital assistant (PDA) is depicted in accordance with a preferred embodiment of the present invention. Personal digital assistant 400 includes a display screen 402 for presenting textual and graphical information. Display screen 402 may be a known display device, such as a liquid crystal display (LCD) device. The display may be used to present a map or directions, calendar information, a telephone directory, or an electronic mail message. In these examples, display screen 402 may receive customer input using an input device such as, for example, stylus 410.

Personal digital assistant 400 may also include keypad 404, speaker 406, and antenna 408. Keypad 404 may be used to receive customer input in addition to using display screen 402. Speaker 406 provides a mechanism for audio output, such as presentation of an audio file. Antenna 408 provides a mechanism used in establishing a wireless communications link between personal digital assistant 400 and a network.

Personal digital assistant 400 also preferably includes a graphical user interface that may be implemented by means of systems software residing in computer readable media in operation within personal digital assistant 400.

Turning now to FIG. 5, a block diagram of a personal digital assistant display device is shown in accordance with a preferred embodiment of the present invention. Personal digital assistant 500 is an example of a personal digital assistant, such as personal digital assistant 400 in FIG. 4, in which code or instructions implementing the processes of the present invention for displaying customized digital marketing messages may be located. Personal digital assistant 500 includes a bus 502 to which processor 504 and main memory 506 are connected. Display adapter 508, keypad adapter 510, storage 512, and audio adapter 514 also are connected to bus 502. Cradle link 516 provides a mechanism to connect personal digital assistant 500 to a cradle used in synchronizing data in personal digital assistant 500 with another data processing system. Further, display adapter 508 also includes a mechanism to receive customer input from a stylus when a touch screen display is employed.

An operating system runs on processor 504 and is used to coordinate and provide control of various components within personal digital assistant 500 in FIG. 5. The operating system may be, for example, a commercially available operating system such as Windows CE, which is available from Microsoft Corporation. Instructions for the operating system and applications or programs are located on storage devices, such as storage 512, and may be loaded into main memory 506 for execution by processor 504.

The depicted examples in FIGS. 1-5 are not meant to imply architectural limitations. The hardware in FIGS. 1-5 may vary depending on the implementation. Other internal hardware or peripheral devices, such as flash memory, equivalent non-volatile memory, or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in FIGS. 1-5. Also, the processes of the illustrative embodiments may be applied to a multiprocessor data processing system.

Referring now to FIG. 6, a block diagram of a data processing system for analyzing event data to identify event patterns for generating a marketing strategy is shown in accordance with an illustrative embodiment. Data associated with a group of customers includes event data and any available internal data and/or external data associated with the group of customers. Data processing system 600 is a data processing system, such as data processing system 100 in FIG. 1 and/or data processing system 300 in FIG. 3.

Analysis server 602 is any type of known or available server for analyzing dynamic customer data elements for use in generating marketing strategies and customized digital marketing messages. Analysis server 602 is implemented in a computing device, such as server 104 in FIG. 1 or data processing system 300 in FIG. 3. Analysis server 602 includes set of data models 604 for analyzing dynamic customer data elements and static customer data elements.

Static customer data elements are data elements that do not tend to change in real time. Examples of static data elements include a customer's name and address. Dynamic customer data elements are data elements that are changing in real-time. For example, dynamic customer data elements could include, without limitation, the current contents of a customer's shopping basket, the time of day, the day of the week, whether it is the customer's birthday or other holiday observed by the customer, customer's responses to marketing messages and/or items viewed by the customer, customer location, and/or any other dynamic customer information.

Set of data models 604 is one or more data models created a priori, that is, pre-generated, for use in analyzing dynamic data 616 to identify event patterns and generate optimized marketing model 605. Dynamic data 616 comprises external data, internal data, event data, identification data, and data describing the current companions of the customer.

Set of data models 604 includes one or more data models for parsing event data, identifying of interest, and determining patterns or relationships between the events of interest. An event of interest is an event associated with selection of an item for purchase by a customer. Set of data models 604 are generated using statistical, data mining, and simulation or modeling techniques. In this example, set of data models 604 includes, but is not limited to, a unifying data model, system data models, event data models, and/or user data models. The unifying data model is discussed in greater detail in FIG. 11.

Optimized marketing model 605 is a model, set of definitions, suggestions, and/or parameters for implementing an optimized marketing strategy in a retail environment. Optimized marketing model 605 may include, without limitation, suggestions for placement of display device 632, placement of items in the retail marketing environment, locations of product displays, locations of signs, environment/temperature adjustments, suggested noises, music, sounds, colors, lighting, and scents to be provided, and/or areas for stationing employees in the retail facility. For example, optimized marketing model 605 may also include instructions for a type or style of music to be played in a certain area of the retail environment, an optimal temperature that should be maintained, scents, perfumes, or artificial pheromones that should be released into the air at a particular location, and an optimal color that should be used in signage, decorations, or paint.

In addition, optimized marketing model 605 may suggest or provide optimal placement of shelves, displays, or racks, as well as any other information regarding placement of one or more items in the retail environment based on patterns of events identified in event data.

Profile data 606 is data regarding one or more customers. Profile data 606 includes point of contact data, profiled past data, current actions data, transactional history data, transactional history data, certain click-stream data, granular demographics 608, psychographic data 610, registration data, and account data and/or any other data regarding a customer. Registration data may include customer provided data regarding the customer, such as name, address, telephone number, email address, fax number, place of employment, or any other customer information.

Point of contact data is data regarding a method or device used by a customer to interact with a data processing system of a merchant or supplier and/or receive customized marketing message 630 for display. The customer may interact with the merchant or supplier using a computing device or display terminal having a user interface for inputting data and/or receiving output. The device or terminal may be a device provided by the retail facility and/or a device belonging to or provided by the customer. For example, the display or access device may include, but is not limited to, a cellular telephone, a laptop computer, a desktop computer, a computer terminal kiosk, personal digital assistant (PDA), or any other display or access device, such as display device 632.

If display device 632 is a display device associated with the retail facility, details and information regarding display device 632 will be known to analysis server 602. However, if display device 632 is a display device belonging to the customer or brought to the retail facility by the customer, analysis server 602 may identify the type of display device using techniques such as interrogation commands, cookies, or any other known or equivalent technique. From the type of device, other constraints may be determined, such as display size, resolution, refresh rate, color capability, keyboard entry capability, other entry capability such as pointer or mouse, speech recognition and response, language constraints, and any other fingertip touch point constraints and assumptions about customer state of the display device. For example, someone using a cellular phone has a limited time window and is sensitive to location and local time of day, whereas a casual home browser may have a greater luxury of time and faster connectivity.

An indication of a location for the point of contact may also be determined. For example, global positioning system (GPS) coordinates of the customer may be determined if the customer device has such a capability whether by including a real time global positioning system receiver or by periodically storing global positioning system coordinates entered by some other method. Other location indications may also be determined such as post office address, street or crossroad coordinates, latitude-longitude coordinates or any other location indicating system.

Analysis server 602 may also determine the connectivity. For example, the customer may be connected to the merchant or supplier in any of a number ways such as a modem, digital modem, network, wireless network, Ethernet, intranet, or high speed lines including fiber optic lines. Each way of connection imposes constraints of speed, latency, and/or mobility which can then also be determined.

The profiled past comprises data for individualization of customized marketing message 630. Global profile data may be retrieved from a file, database, data warehouse or any other data storage device. Multiple storage devices and software may also be used. Some or all of the data may be retrieved from the point of contact device, as well. The profiled past may comprise an imposed profile, global profile, individual profile, and demographic profile. The profiles may be combined or layered to define the customer for specific promotions and marketing offers.

In the illustrative embodiments, a global profile includes data on the customer's interests, preferences, and affiliation. The profiled past may also comprise retrieving purchased data. Various firms provide data for purchase which is grouped or keyed to presenting a lifestyle or life stage view of customers by block or group or some other baseline parameter. The purchased data presents a view of the customer based on aggregation of data points, such as, but not limited to geographic block, age of head of household, income level, number of children, education level, ethnicity, and buying patterns.

The profiled past may also include navigational data relating to the path the customer used to arrive at a web page which indicates where the customer came from or the path the customer followed to link to the merchant or supplier's web page. Transactional data of actions taken is data regarding a transaction. For example, transaction data may include data regarding whether the transaction is a first time transaction or a repeat transaction, and/or how much the customer usually spends. Information on how much a customer generally spends during a given transaction may be referred to as basket share. Data voluntarily submitted by the customer in responding to questions or a survey may also be included in the profiled past.

Current actions, also called a current and historical record, are also included in profile data 606. Current actions are data defining customer behavior. One source of current actions is listings of the purchases made by the customer, payments and returns made by the customer, and/or click-stream data from a point of contact device of the customer. Click-stream data is data regarding a customer's navigation of an online web page of the merchant or supplier. Click-stream data may include page hits, sequence of hits, duration of page views, response to advertisements, transactions made, and conversion rates. Conversion rate is the number of times the customer takes action divided by the number of times an opportunity is presented.

In this example, profiled past data for a group of customers is stored in analysis server 602. However, in accordance with the illustrative embodiments, profiled past data may also be stored in any local or remote data storage device, including, but not limited to, a device such as storage area network 108 in FIG. 1 or read only memory (ROM) 324 and/or compact disk read only memory (CD-ROM) 330 in FIG. 3.

Granular demographics 608 include data associated with a detailed demographics profile for one or more customers. Granular demographics 608 may include, without limitation, ethnicity, block group, lifestyle, life stage, income, and education data. Granular demographics 608 may be used as an additional layer of profile data 606 associated with a customer.

Psychographic data 610 refers to an attitude profile of the customer. Examples of attitude profiles include a trend buyer or a time-strapped person who prefers to purchase a complete outfit, or a professional buyer who prefers to mix and match individual items from various suppliers. Profile data 606, granular demographics 608, psychographic data 610, point of contact data, transactional history data, and/or profiled past data are examples of static customer data elements.

External data 614 is data gathered by one or more detection devices located externally to a retail facility, such as retail facility 202 in FIG. 2. External data 614 may include data regarding detection of a presence of a customer outside a retail facility, grouping categories for customers outside the retail facility that are moving toward an entrance to the retail facility, and/or detection of one or more customers exiting the retail facility. External data 614 may also indicate detection of a presence of a customer's vehicle, such as a car, bicycle, motorcycle, bus, or truck. For example, the detection devices may be detectors such as detectors 204-210 in FIG. 2.

Grouping data is data regarding a grouping category for a customer. A grouping category describes the relationship of a group or subset of customers. A grouping category includes, without limitation, parents with children, teenagers, children, minors unaccompanied by adults, minors accompanied by adults, grandparents with grandchildren, senior citizens, couples, friends, coworkers, a customer shopping alone, a customer accompanied by one or more pets, such as a dog, or any other category for a customer.

Grouping data is generated using either external data or detection data gathered inside a retail facility. Detection data gathered inside the retail facility includes, but is not limited to, video images of a customer captured by cameras located inside or internally to a retail facility and/or data regarding the current or real-time contents of a customer's shopping basket gathered by a set of radio frequency identification sensors located inside the retail facility.

Dynamic data 616 is data describing a customer in real-time as the customer is shopping in a retail facility. Dynamic data 616 includes customer identification data, event data, grouping data, and customer behavior data. Event data is metadata describing events occurring in the retail marketing environment. The event data includes patterns of events that are of interest to marketing efforts. Dynamic data may also include external data and/or data gathered inside the retail facility.

Processing dynamic data 616 may include processing the dynamic data with static customer data elements and/or biometric data for the customer.

Biometric data is be used to determine a customer's response to an item or marketing message being viewed by a customer at the time a change in a biometric reading takes place. For example, if a customer's heart rate or pupil dilation changes while viewing a marketing message, the change in the heart rate or pupil dilation may be attributed to the marketing message. The biometric data is used to identify a selected item. For example, if a customer's biometric responses change when the customer is looking at an item or holding an item, analysis server 602 identifies the item as a selected item. The biometric data for the customer is also used to generate customized marketing messages. If a customer's biometric responses change while the customer is viewing a marketing message, the customer's responses are used to modify the marketing messages presented to the user. If the biometric data indicates a favorable response to marketing message elements, those marketing message elements are used more frequently. If the biometric data indicates a negative response to marketing message elements, those marketing message elements are used less frequently and/or those elements are not used or avoided in future marketing messages.

Biometric data such as, without limitation, fingerprint scans, retinal scans, and voice print analysis may also be used to dynamically identify a customer while the customer is outside the retail marketing facility, as well as after the customer has entered or is inside the retail marketing facility. For example, a fingerprint scanner on a shopping container or a display device may be used to determine or verify a customer's identity.

Processing dynamic data 616 includes, but is not limited to, filtering event data for relevant data elements, combining event data with biometric data, static customer data elements and/or external data 614, comparing event data to baseline or comparison models for external data, and/or formatting event data for utilization and/or analysis in one or more data models in set of data models 604 to form the dynamic data.

The processed dynamic data 616 and any available biometric data, static customer data elements, and/or external data 614 forms dynamic customer data (not shown). The dynamic customer data, which includes patterns of events of interest, is analyzed and/or further processed using one or more data models in set of data models 604 to generate optimized marketing model 605. Dynamic data may also be used to generate marketing message criteria which are used to generate customized marketing message 630.

Correlated items list 618 is a list of one or more items that provides a different basic functionality than an item selected by the customer for purchase. The items in the list of correlated items are items that are different than the selected item. The selected item is an identification of an item selected by a customer. An item is identified as the selected item when a customer looks at an item, reaches for an item, touches an item, picks up an item, places the item in a shopping container, such as container 220 in FIG. 2, places the item at a point of sale counter, purchases the item, indicates an interest in purchasing the item, makes a query regarding the item, requests information regarding the item, asks the merchant or sales person questions regarding the item, asks the merchant or sales person to see the item, or otherwise signals an intention to purchase the item.

An item is identified as the selected item by analyzing video images of a customer selecting the item, analyzing radio frequency identification tag data captured by a radio frequency identification tag reader, analyzing motion sensor data and/or pressure sensor data from pressure sensors in contact with the item, and/or any other data associated with the customer, the customer's movements and behavior, and the location of the item being selected.

The items in the list of correlated items are items that are frequently purchased in conjunction with the selected item. For example, if a customer selects hot dog buns, hot dogs are frequently purchased in conjunction with the hot dog buns by a significant percentage of customers.

Correlation engine 619 generates list of correlated items 618 by identifying a plurality of items purchased by a set of two or more customers. The plurality of items are identified using past purchasing histories for customers, sales records, customer profiles, customer behavior data, and/or data describing items purchased by customers during a single shopping trip. Correlation engine 619 analyzes the plurality of items using a set of correlation techniques to identify items that are typically purchased in correlation with one or more other items providing a different basic functionality to form correlated items list 618. Correlation analysis techniques are any known or available analysis techniques for identifying different items that are related to each other such that a first item is frequently purchased or used in conjunction with the second item. However, the second item is not necessarily frequently purchased or used in together with the first item. In other words, the correlation may be a one-way correlation, rather than a two-way correlation. However, there are some cases where the two items do exhibit a two-way correlation, such that purchase and/or use of the second item also correlate with the first item, and vice versa.

List of correlated items 618 is stored in data storage device 620. Data storage device 620 is any type of data storage device, such as storage 108 in FIG. 1. Data storage device 620 may be located locally to analysis server 602 or remotely to analysis server 602. Data storage device 620 may be implemented as a single data storage device or as multiple data storage devices.

Upsale items list 622 is a list of items that provide the same basic functionality as one or more selected items. An upsale item may be a different size than a size of the selected item, a different brand than a brand of the selected item, a different price than a price of the selected item, or a different packaging than a packaging of the selected item. Upsale items may also provide an additional feature or functionality than the selected item. Upsale items produce a greater amount of profit or revenue than a sale of the selected item. In other words, a sale of at least one upsale item produces a greater amount of revenue or a greater amount of profit than a sale of the selected item. In addition, users of the system can choose to utilize the process to increase profit even if revenue remains the same or decreases. In another embodiment, the process is used to increase both profit and revenue.

In this example, analysis server 602 also uses dynamic data 620 to select a set of one or more upsale items from upsale items list 622. Dynamic data 620 is used to select at least one upsale item in upsale items list 622 that is most likely to be purchased by the customer to form the set of promoted upsale items.

Likewise, analysis server 602 also uses dynamic data 620 to select a set of one or more cross-sale items from correlated items list 622. Dynamic data 620 is used to select at least one cross-sale item in correlated items list 618 that is most likely to be purchased by the customer to form a set of promoted cross-sale items.

List of correlated items 618 and/or upsale items list 622 may be pre-generated or generated dynamically as the customer is shopping. In another example, list of correlated items 618 and/or upsale items list 622 are generated by a different analysis server than analysis server 602. In this example, the different analysis server stores a list of correlated items 618 and/or upsale items list 622 in data storage device 620 for retrieval by analysis server 602.

Dynamic data 616, such as grouping data and event data, together with biometric data, and static customer data elements, are used to identify types of customers. Analysis server 602 analyzes customer profile data 606 for a plurality of customers to identify types of customers in the plurality of customers. Analysis server 602 associates types of customers with a purchase of each item selected by the customers. Analysis server 602 identifies the events in the patterns of events that result in the purchase of the items by the types of customers to form optimized events. The optimized events are events associated with increasing sales of items, such as selected items, upsale items, and correlated items, by a particular type of customer.

Content server 625 is any type of known or available server for storing modular marketing messages 624. Content server 625 may be a server, such as server 104 in FIG. 1 or data processing system 300 in FIG. 3.

Modular marketing messages 624 are two or more self contained marketing messages that may be combined with one or more other modular marketing messages in modular marketing messages 624 to form a customized marketing message for display to the customer. Modular marketing messages 624 can be quickly and dynamically assembled and disseminated to the customer in real-time.

In this illustrative example, modular marketing messages 624 are pre-generated. In other words, modular marketing messages 624 are preexisting marketing message units that are created prior to analyzing dynamic data 616 associated with a customer using one or more data models to generate a personalized marketing message for the customer. Two or more modular marketing messages are combined to dynamically generate customized marketing message 630 customized or personalized for a particular customer. Although modular marketing messages 624 are pre-generated, modular marketing messages 624 may also include templates imbedded within modular marketing messages for adding personalized information, such as a customer's name or address, to the customized marketing message.

Derived marketing messages 626 is a software component for determining which modular marketing messages in modular marketing messages 624 should be combined or utilized to dynamically generate customized marketing message 630 for the customer in real time. Derived marketing messages 626 uses the output generated by analysis server 602 as a result of analyzing dynamic data 616 associated with a customer using one or more appropriate data models in set of data models 604 to identify one or more modular marketing messages for the customer. The output generated by analysis server 602 from analyzing dynamic data 616 using appropriate data models in set of data models 604 includes marketing message criteria for the customer.

In other words, dynamic data 616 is analyzed to generate personal marketing message criteria. Derived marketing messages 626 uses the marketing message criteria for the customer to select one or more modular marketing messages in modular marketing messages 624.

A customized marketing message is generated using personalized marketing message criteria that are identified using the dynamic data. Personalized marketing message criteria are criterion or indicators for selecting one or more modular marketing messages for inclusion in the customized marketing message. The personalized marketing message criteria may include one or more criterion. The personalized marketing message criteria may be generated, in part, a priori or pre-generated and in part dynamically in real-time based on the dynamic data for the customer and/or any available static customer data associated with the customer. Dynamic data 616 includes external data gathered outside the retail facility and/or dynamic data gathered inside the retail facility.

If an analysis of dynamic data 616 indicates that the customer is shopping with a large dog, the personal marketing message criteria may include criteria to indicate marketing of pet food and items for large dogs. Because people with large dogs often have large yards, the personal marketing message criteria may also indicate that yard items, such as yard fertilizer, weed killer, or insect repellant may should be marketed. The personal marketing message criteria may also indicate marketing elements designed to appeal to animal lovers and pet owners, such as incorporating images of puppies, images of dogs, phrases such as “man's best friend”, “puppy love”, advice on pet care and dog health, and/or other pet friendly images, phrases, and elements to appeal to the customer's tastes and interests.

Derived marketing messages 626 uses the output of one or more data models in set of data models 604 that were used to analyze dynamic data 616 associated with a customer to identify one or more modular marketing messages to be combined together to form the personalized marketing message for the customer.

For example, if a customer selects peanut butter for purchase, analysis server 602 may identify a first modular marketing message that includes a special on a more expensive brand of peanut butter. A second modular marketing message may be a discount on jelly when peanut butter is purchased with the jelly. In response to marketing message criteria that indicates the customer frequently purchases cheaper brands of peanut butter, the customer has children, and the customer is currently in an aisle of the retail facility that includes jars of peanut butter, derived marketing messages 626 will select the first marketing message and the second marketing message based on the marketing message criteria for the customer.

Dynamic marketing message assembly 628 is a software component for combining the one or more modular marketing messages selected by derived marketing messages 626 to form customized marketing message 630. Dynamic marketing message assembly 628 combines modular marketing messages selected by derived marketing messages 626 to create appropriate customized marketing message 630 for the customer. In the example above, after derived marketing messages 626 selects the first modular marketing message and the second modular marketing message based on the marketing message criteria, dynamic marketing message assembly 628 combines the first and second modular marketing messages to generate a customized marketing message offering the customer a discount on both the peanut butter and jelly if the customer purchases the more expensive brand of peanut butter. In this manner, dynamic marketing message assembly 628 provides assembly of customized marketing message 630 based on output from the data models analyzing internal data and/or external data associated with the customer.

Customized marketing message 630 is a customized and unique marketing message for a particular customer. The marketing message is a one-to-one customized marketing message for a specific customer. Customized marketing message 630 is generated using dynamic data 616 and/or static customer data elements, such as the customer's demographics and psychographics, to achieve this unique one-to-one marketing.

Customized marketing message 630 is generated for a particular customer based on dynamic customer data elements, such as grouping data, customer identification data, current events data, and customer behavior data. For example, if modular marketing messages 624 include marketing messages identified by numerals 1-20, customized marketing message 630 may be generated using marketing messages 2, 8, 9, and 19. In this example, modular marketing messages 2, 8, 9, and 19 are combined to create a customized marketing message that is generated for display to the customer rather than displaying the exact same marketing messages to all customers.

Customized marketing message 630 is displayed on display device 632. If display device 632 is a display device associated with the retail facility, details and information regarding display device 632 will be known to analysis server 602. However, if display device 632 is a display device belonging to the customer or brought to the retail facility by the customer, analysis server 602 may identify the type of display device using techniques such as interrogation commands, cookies, or any other known or equivalent technique. From the type of device other constraints may be determined such as display size, resolution, refresh rate, color capability, keyboard entry capability, other entry capability such as pointer or mouse, speech recognition and response, language constraints, and any other fingertip touch point constraints and assumptions about customer state of the display device. For example, someone using a cellular phone may have a limited time window for making phone calls and be sensitive to location and local time of day, whereas a casual home browser may have a greater luxury of time and faster connectivity.

Customized marketing message 630 may include advertisements, sales, special offers, incentives, opportunities, promotional offers, rebate information and/or rebate offers, discounts, and opportunities. An opportunity may be a “take action” opportunity, such as asking the customer to make an immediate purchase, select a particular item, request a download, provide information, or take any other type of action. Customized marketing message 630 may also include content or messages pushing advertisements and opportunities to effectively and appropriately drive the point of contact customer to some conclusion or reaction desired by the merchant.

Customized marketing message 630 is formed in a dynamic closed loop manner in which the content delivery depends on dynamic data 616, as well as other dynamic customer data elements and static customer data, such as profile data 606 and granular demographics 608. Therefore, all interchanges with the customer may sense and gather data associated with customer behavior, which is used to generate customized marketing message 630.

Display device 632 is a multimedia display for presenting customized marketing messages to one or more customers. Display device 632 may be a multimedia display, such as, but not limited to, display devices 214, 216, and 226 in FIG. 2. Thus, a merchant has a capability for interacting with the customer on a direct one-to-one level by sending customized marketing message 630 to display device 632. Customized marketing message 630 may be sent and displayed to the customer via a network. For example, customized marketing message 630 may be sent via a web site accessed as a unique uniform resource location (URL) address on the World Wide Web, as well as any other networked connectivity or conventional interaction including, but not limited to, a telephone, computer terminal, cell phone or print media.

In response to displaying customized marketing message 630, a customer can select to print the customized marketing message 630 as a coupon and/or as a paper or hard copy for later use. In another embodiment, display device 632 automatically prints customized marketing message 630 for the customer rather than displaying customized marketing message 630 on a display screen or in addition to displaying customized marketing message 630 on the display screen. Display device 632 may also provides an option for a customer to save customized marketing message 630 in an electronic form for later use. For example, the customer may save customized marketing message 630 on a hand held display device, on a flash memory, a customer account in a data base associated with analysis server 602, or any other data storage device. In this example, when customized marketing message 630 is displayed to the customer, the customer is presented with a “use offer now” option and a “save offer for later use” option. If the customer chooses the “save offer” option, the customer may save an electronic copy of customized marketing message 630 and/or print a paper copy of customized marketing message 630 for later use.

FIG. 7 is a block diagram of a dynamic marketing message assembly transmitting a customized marketing message to a set of display devices in accordance with an illustrative embodiment. Dynamic marketing message assembly 700 is a software component for combining two or more modular marketing messages into a customized marketing message for a customer. Dynamic marketing message assembly 700 may be a component such as dynamic marketing message assembly 628 in FIG. 6.

Dynamic marketing message assembly 700 transmits a customized marketing message, such as customized marketing message 430 in FIG. 4, to one or more display devices in a set of display devices. In this example, the set of display devices includes, but is not limited to, digital media display device 702, kiosk 704, personal digital assistant 706, cellular telephone 708, and/or electronic sign 710. A set of display devices in accordance with the illustrative embodiments may include any combination of display devices and any number of each type of display device. For example, a set of display devices may include, without limitation, six kiosks, fifty personal digital assistants, and no cellular telephones. In another example, the set of display devices may include electronic signs and kiosks but no personal digital assistants or cellular telephones.

Digital media display device 702 is any type of known or available digital media display device for displaying a marketing message. Digital media display device 702 may include, but is not limited to, a monitor, a plasma screen, a liquid crystal display screen, and/or any other type of digital media display device.

Kiosk 704 is any type of known or available kiosk. In one embodiment, a kiosk is a structure having one or more open sides, such as a booth. The kiosk includes a computing device associated with a display screen located inside or in association with the structure. The computing device may include a user interface for a user to provide input to the computing device and/or receive output. For example, the user interface may include, but is not limited to, a graphical user interface (GUI), a menu-driven interface, a command line interface, a touch screen, a voice recognition system, an alphanumeric keypad, and/or any other type of interface.

Personal digital assistant 706 is any type of known or available personal digital assistant (PDA). Cellular telephone 708 is any type of known or available cellular telephone and/or wireless mobile telephone. Cellular telephone 708 includes a display screen that is capable of displaying pictures, graphics, and/or text. Additionally, cellular telephone 708 may also include an alphanumeric keypad, joystick, and/or buttons for providing input to cellular telephone 708. The alphanumeric keypad, joystick, and/or buttons may be used to initiate various functions in cellular telephone 708. These functions include for example, activating a menu, displaying a calendar, receiving a call, initiating a call, displaying a customized marketing message, saving a customized marketing message, and/or selecting a saved customized marketing message.

Electronic sign 710 is any type of electronic messaging system. For example, electronic sign 710 may include, without limitation, an outdoor electronic light emitting diode (LED) display, moving message boards, variable message signs, tickers, electronic message centers, video boards, and/or any other type of electronic signage.

The display device may also include, without limitation, a laptop computer, a smart watch, a digital message board, a monitor, a tablet PC, a printer for printing the customized marketing message on a paper medium, or any other output device for presenting output to a customer.

A display device may be located externally to the retail facility to display marketing messages to the customer before the customer enters the retail facility. In another embodiment, the customized marketing message is displayed to the customer on a display device inside the retail facility after the customer enters the retail facility and begins shopping.

Turning now to FIG. 8, a block diagram of an identification tag reader for identifying items selected by a customer is shown in accordance with an illustrative embodiment. Item 800 is any type of item, such as retail items 228 in FIG. 2. Identification tag 802 associated with item 800 is a tag for providing information regarding item 800 to identification tag reader 804. Identification tag 802 is a tag such as a tag in identification tags 230 in FIG. 2. Identification tag 802 may be a bar code, a radio frequency identification tag, a global positioning system tag, and/or any other type of tag.

Radio Frequency Identification tags include read-only identification tags and read-write identification tags. A read-only identification tag is a tag that generates a signal in response to receiving an interrogate signal from an item identifier. A read-only identification tag does not have a memory. A read-write identification tag is a tag that responds to write signals by writing data to a memory within the identification tag. A read-write tag can respond to interrogate signals by sending a stream of data encoded on a radio frequency carrier. The stream of data can be large enough to carry multiple identification codes. In this example, identification tag 802 is a radio frequency identification tag.

Identification tag reader 804 is any type of known or available device for retrieving information from identification tag 802. Identification tag reader 804 may be, but is not limited to, a radio frequency identification tag reader or a bar code reader, such as identification tag reader 232 in FIG. 2. A bar code reader is a device for reading a bar code, such as a universal product code. In this example, identification tag reader 804 provides identification data 808, item data 810, and/or location data 812 to an analysis server, such as analysis server 402 in FIG. 4.

Identification data 808 is data regarding the product name and/or manufacturer name of item 800 selected for purchase by a customer. Item data 810 is information regarding item 800, such as, without limitation, the regular price, sale price, product weight, and/or tare weight for item 800. Identification data 808 is used to identify items selected by a customer for purchase.

Location data 812 is data regarding a location of item 800 within the retail facility and/or outside the retail facility. For example, if identification tag 802 is a bar code, the item associated with identification tag 802 must be in close physical proximity to identification tag reader 804 for a bar code scanner to read a bar code on item 800. Therefore, location data 812 is data regarding the location of identification tag reader 804 currently reading identification tag 802. However, if identification tag 802 is a global positioning system tag, a substantially exact or precise location of item 800 may be obtained using global positioning system coordinates obtained from the global positioning system tag.

Identifier database 806 is a database for storing any information that may be needed by identification tag reader 804 to read identification tag 802. For example, if identification tag 802 is a radio frequency identification tag, identification tag will provide a machine readable identification code in response to a query from identification tag reader 804. In this case, identifier database 806 stores description pairs that associate the machine readable codes produced by identification tags with human readable descriptors. For example, a description pair for the machine readable identification code “10141014111111” associated with identification tag 802 would be paired with a human readable item description of item 800, such as “orange juice.” An item description is a human understandable description of an item. Human understandable descriptions are for example, text, audio, graphic, or other representations suited for display or audible output.

FIG. 9 is a block diagram illustrating an external marketing manager for generating current events data in accordance with an illustrative embodiment. External marketing manager 900 is a software component for collecting current news items 902, competitor marketing data 904, holidays, seasonal events, seasonal celebrations, and/or events data 906, and/or any other current events or news data from a set of sources. The set of sources may include one or more sources. A source may be, without limitation, a newspaper, catalog, a web page or other network resource, a television program or commercial, a flier, a pamphlet, a book, a booklet, a news board, a coupon board, a news group, a blog, a magazine, a religious calendar, a secular calendar, or any other paper or electronic source of information. A source may also include information provided by a human user.

External marketing manager 900 stores current news items 902, competitor marketing data 904, holidays and/or events data 906, and/or any other current events or news data in data storage device 908 as external marketing data 910. Data storage device 908 may be implemented as any type of data storage device, including, without limitation, a hard disk, a database, a main memory, a flash memory, a random access memory (RAM), a read only memory (ROM), or any other data storage device.

In this example, external marketing manager 900 filters or processes external marketing data 910 to form current events data 920. Filtering external marketing data 910 may include selecting data items or data objects associated with marketing one or more items to a customer. A data item or data object associated with marketing one or more items is a data element that may influence a customer's decision to purchase a product. For example, the occurrence of a sporting event may influence the items selected by a customer for purchase, such as potato chips, pizza, beer, and big screen televisions.

In this example, external marketing manager 900 filters external marketing data 910 for relevant data elements to form current events data 920 without intervention by a human user. In another embodiment, a human user filters external marketing data 910 manually to generate current events data 920. The analysis server uses the current events data to identify an event of interest to the customer that occurs within a predetermined period of time. For example, if a customer profile and dynamic data indicates that the customer is Catholic and current events data 920 indicates Mardi Gras is approaching, the analysis server can identify items associated with Mardi Gras, such as King Cake and Mardi Gras decorations such as Mardi Gras beads and masks.

FIG. 10 is a block diagram illustrating a smart detection engine for generating customer identification data and selected item data in accordance with an illustrative embodiment. Smart detection system 1000 is software architecture for analyzing camera images and other detection data to form dynamic data 1020. In this example, the detection data is video images captured by a camera. However, the detection data may also include, without limitation, pressure sensor data captured by a set of pressure sensors, heat sensor data captured by a set of heat sensors, motion sensor data captured by a set of motion sensors, audio captured by an audio detection device, such as a microphone, or any other type of detection data described herein.

Audio/video capture device 1002 is a device for capturing video images and/or capturing audio. Audio/video capture device 1002 may be, but is not limited to, a digital video camera, a microphone, a web camera, or any other device for capturing sound and/or video images.

Audio data 1004 is data associated with audio captured by audio/video capture device 1002, such as human voices, vehicle engine sounds, dog barking, horns, and any other sounds. Audio data 1004 may be a sound file, a media file, or any other form of audio data. Audio/video capture device 1002 captures audio associated with a set of one or more customers inside a retail facility and/or outside a retail facility to form audio data 1004.

Video data 1006 is image data captured by audio/video capture device 1002. Video data 1006 may be a moving video file, a media file, a still picture, a set of still pictures, or any other form of image data. Video data 1006 is video or images associated with a set of one or more customers inside a retail facility and/or outside a retail facility.

For example, video data 1006 may include images of a customer's face, an image of a part or portion of a customer's car, an image of a license plate on a customer's car, and/or one or more images showing a customer's behavior. An image showing a customer's behavior or appearance may show a customer wearing a long coat on a hot day, a customer walking with two small children which may be the customer's children or grandchildren, a customer moving in a hurried or leisurely manner, or any other type of behavior or appearance attributes of a customer, the customer's companions, or the customer's vehicle.

Audio/video capture device 1002 transmits audio data 1004 and video data 1006 to smart detection engine 1008. Audio data 1004 and video data 1006 may be referred to as detection data. Smart detection engine 1008 is software for analyzing audio data 1004 and video data 1006. In this example, smart detection engine 1008 processes audio data 1004 and video data 1006 into data and metadata to form dynamic data 1020. Dynamic data 1020 includes, but not limited to, external data 1010, customer identification data 1014, grouping data 1016, customer event data 1018, and current events data 1022. Customer grouping data is data describing a customer's companions, such as children, parents, siblings, peers, friends, and/or pets.

Processing the audio data 1004 and video data 1006 may include filtering audio data 1004 and video data 1006 for relevant data elements, analyzing audio data 1004 and video data 1006 to form metadata describing or categorizing the contents of audio data 1004 and video data 1006, or combining audio data 1004 and video data 1006 with other audio data, video data, and data associated with a group of customers received from cameras.

Smart detection engine 1008 uses computer vision and pattern recognition technologies to analyze audio data 1004 and/or video data 1006. Smart detection engine 1008 includes license plate recognition technology which may be deployed in a parking lot or at the entrance to a retail facility where the license plate recognition technology catalogs a license plate of each of the arriving and departing vehicles in a parking lot associated with the retail facility.

Smart detection engine 1008 includes behavior analysis technology to detect and track moving objects and classify the objects into a number of predefined categories. As used herein, an object may be a human customer, an item, a container, a shopping cart or shopping basket, or any other object inside or outside the retail facility. Behavior analysis technology could be deployed on various cameras overlooking a parking lot, a perimeter, or inside a facility.

Face detection/recognition technology may be deployed in parking lots, at entry ways, and/or throughout the retail facility to capture and recognize faces. Badge reader technology may be employed to read badges. Radar analytics technology may be employed to determine the presence of objects. Events from access control technologies can also be integrated into smart detection engine 1008.

The events from all the above detection technologies are cross indexed into a single repository, such as multi-mode database. In such a repository, a simple time range query across the modalities will extract license plate information, vehicle appearance information, badge information, and face appearance information, thus permitting an analyst to easily correlate these attributes.

Smart detection system 1000 may be implemented using any known or available software for performing voice analysis, facial recognition, license plate recognition, and sound analysis. In this example, smart detection system 1000 is implemented as IBM® smart surveillance system (S3) software.

The data gathered from the behavior analysis technology, license plate recognition technology, face detection/recognition technology, badge reader technology, radar analytics technology, and any other video/audio data received from a camera or other video/audio capture device is received by smart detection engine 1008 for processing into dynamic data 1020.

FIG. 11 is a block diagram of a unifying data model for processing event data in accordance with an illustrative embodiment. The event data generated by a smart detection system may be processed by one or more data models in a set of data models, such as set of data models 504 in FIG. 5, to identify patterns in the events. Unifying data model 1100 is an example of a data model for processing event data.

In this example, unifying data model 1100 has three types of data models, namely, 1) system data models 1102 which captures the specification of a given monitoring system, including details like geographic location of the system, number of cameras, physical layout of the monitored space, and other details regarding the retail marketing environment; 2) user data models 1104 models users, privileges and user functionality; and 3) event data models 11011 which captures the events that occur in a specific sensor or zone in the monitored space. Each of these data models is described below.

System data models 1102 has a number of components. These may include sensor/camera data models 1108. The most fundamental component of sensor/camera data models 1108 is a view. A view is defined as some particular placement and configuration, such as a location, orientation, and/or parameters, of a sensor. In the case of a camera, a view would include the values of the pan, tilt and zoom parameters, any lens and camera settings and position of the camera. A fixed camera can have multiple views. The view “Id” may be used as a primary key to distinguish between events being generated by different sensors. A single sensor can have multiple views. Sensors in the same geographical vicinity are grouped into clusters, which are further grouped under a root cluster.

There is one root cluster per MILS server. Engine data models 1110 provide a comprehensive security solution which utilizes a wide range of event detection technologies. Engine data models 1110 captures at least some of the following information about the analytical engines: Engine Identifier: A unique identifier assigned to each engine; Engine Type: This denotes the type of analytic being performed by the engine, for example face detection, behavior analysis, and/or LPR; and Engine Configuration: This captures the configuration parameters for a particular engine.

User data models 1104 captures the privileges of a given user. These may include selective access to camera views; selective access to camera/engine configuration and system management functionality; and selective access to search and query functions.

Event data models 1106 represent the events that occur within a space that may be monitored by one or more cameras or other sensors. A time line data model may also be employed as discussed above. Time line data models 1107 uses time as a primary synchronization mechanism for events that occur in the real world, which is monitored through sensors. The schema allows multiple layers of annotations for a given time span.

FIG. 12 is a block diagram illustrating a list of upsale items corresponding to selected items in accordance with an illustrative embodiment. Upsale items list 1200 is a list of items that provide a same basic functionality as selected item 1202. Upsale items 1204 provide an additional feature or functionality over selected item 1202, such as, but not limited to, a different size, different ingredients, different method of operation, different method of replacement or disposal, different packaging, different price than selected item 1202, or any combination of these features and functionalities. For example, if a selected item is a six-pack of root beer 1206, upsale items for the selected item include, without limitation, a larger twelve-pack size root beer, a twenty-four pack root beer, a two liter bottle of root beer, or a combination of a two-litter of root beer and ice cream.

Thus, the upsale item may include a combination of an upsale item providing a same basic functionality and a correlated item that provides a different basic functionality. In this case, ice cream provides a different basic functionality than root beer, but ice cream may be likely to be purchased by the customer in conjunction with root beer. Therefore, a marketing message for the upsale item includes an offer, discount, or incentive for both the upsale item two liter root beer and the correlated cross-sale item of ice cream.

The upsale item may be a different size or different number of items. For example, a sixty count bottle of vitamins 1208 may be associated with an upsale item of one-hundred count vitamins. The upsale item may also be a different brand than the selected item. If the customer selects brand “X” pizza 1210, the upsale item can be a different brand “Y” pizza 1210.

Turning now to FIG. 13, a block diagram illustrating a list of correlated items for promoting cross sales of related items is depicted in accordance with an illustrative embodiment. Correlated items list 1300 is a list of selected items 1302 and correlated items 1304 that provide a different basic functionality than selected item 1302. Correlated items list 1300 is a list, such as correlated items list 614 in FIG. 6.

Correlated items list 1300 is generated by analyzing items that are frequently purchased together by customers. For example, if a customer purchases peanut butter 1306, it is likely that the customer will also purchase jelly and/or bread. The correlation between products is not always a two-way correlation. If a customer purchases cereal 1308, most of the time, the customer will also purchase milk. However, customers that select milk for purchase may not be significantly more likely to purchase cereal.

In some cases, this correlation of different items that are purchased in conjunction is a two way correlation. For example, if a customer selects spaghetti pasta 1310, it is very likely that the customer will also purchase spaghetti sauce. Likewise, if a customer first selects spaghetti sauce 1312, there is a significant probability that the customer will also purchase spaghetti pasta.

In addition, the correlation may be a correlation between a single selected item 1302 and two or more correlated items. For example, if a customer selects pizza sauce 1314, there may be a high likelihood that the customer will also be interested in purchasing both pizza crust and pizza cheese. The process identifies an item selected by a customer for purchase and then uses correlated items list 1300 to identify one or more correlated items that the customer is most likely to be interested in purchasing.

FIG. 14 is a flowchart illustrating a smart detection system generating event data in accordance with an illustrative embodiment. The process in FIG. 14 may be implemented by a smart detection system, such as smart detection system 1000 in FIG. 10. The process begins by receiving detection data from a set of cameras (step 1402). The process analyzes the detection data using multiple analytical technologies to detect events (step 1404). The multiple technologies may include, for example, a behavior analysis engine, a license plate recognition engine, a face recognition engine, a badge reader engine, and/or a radar analytic engine. Events are cross correlated in a unifying data model to identify patterns of events (step 1406). Cross correlating provides integrated situation awareness across the multiple analytical technologies. The cross correlating may include correlating events to a time line to associate events to define an integrated event. The patterns of events are indexed and stored in a repository, such as a database (step 1408) with the process terminating thereafter.

In the example in FIG. 14, the database can be queried to determine whether an integrated event matches the query. This includes employing cross correlated information from a plurality of information technologies and/or sources. New analytical technologies also may be registered. The new analytical technologies can employ model and cross correlate with existing analytical technologies to provide a dynamically configurable surveillance system. In this example, detection data is received from a set of cameras. However, in other embodiments, detection data may come from other detection devices, such as, without limitation, a badge reader, a radio frequency identification system, a voice recognition system, a microphone, a motion detector, a heat sensor, or a radar.

FIG. 15 is a flowchart illustrating a process for generating an optimized marketing model in accordance with an illustrative embodiment. The process in FIG. 15 may be implemented by an analysis server, such as analysis server 502 in FIG. 5.

The process begins by retrieving event data associated with a set of customers or a selected area of the retail facility (step 1502). Event data may be received in real-time from a smart detection engine as the event data is generated or the event data may be retrieved from a data storage device associated with the smart detection engine, such as a relational database, a multimodal database, or any other data storage. The event data includes metadata describing events occurring inside a retail facility or outside a retail facility. Event data may include data describing customers' appearance, customers' actions, customers' vehicles, a customer's companions, the movements and/or speed or pace of one or more customers shopping or otherwise moving through the retail facility.

The process parses the event data to identify patterns in the events (step 1504). Parsing the event data may include, but is not limited to, processing the event data using a statistical method, a data mining method, a causal model, a mathematical model, a marketing model, a behavioral model, a psychological model, a sociological model, and/or a simulation model.

Next, the process identifies events in the patterns of events associated with a selection of an item for purchase by one or more customers to form optimized events (step 1506). The process retrieves a list of correlated items selected by the set of customers or associated with the selected area (step 1508) and retrieves a list of upsale items selected by the set of customers or associated with the selected area (step 1510).

The process makes a determination as to whether other dynamic data is available in addition to the event data (step 1512). The dynamic data includes customer identification data, grouping data, vehicle identification data, behavior data, and/or biometric data. If other dynamic data is available, the process retrieves the dynamic data (step 1514). Next, the process uses the optimized events, the list of correlated items, the list of upsale items, and any available dynamic data to generate an optimized marketing model (step 1516) with the process terminating thereafter. In this example, the optimized marketing model includes a marketing strategy that provides suggestions regarding placement of items, also referred to as product placement, placement of display devices displaying customized marketing messages, placement of signs or notices, sounds and music played over a sound system, the timing of announcements, the volume of sounds and music played over the sound system, natural and artificial odors/scents and pheromones to be released into the air at particular locations, placement of product samples for customers to try, the colors of decorations and signs, locations of store employees, locations of product displays, and/or any other strategies to improve or optimize marketing efforts.

Turning now to FIG. 16, a flowchart illustrating a process for monitoring for a change in biometric readings associated with a customer is depicted in accordance with an illustrative embodiment. The process may be implemented by a device for measuring physiological responses and/or traits of a customer, such as biometric device 216 and 222 in FIG. 2 and/or biometric device 1104 in FIG. 11.

The process begins by monitoring biometric readings for a plurality of customers obtained from a set of one or more biometric devices (step 1602). The process makes a determination as to whether a change in the biometric readings for any of the customers in the plurality of customers exceeds a threshold change has been detected (step 1604). If a change exceeding the threshold is not detected, the process terminates thereafter.

Returning to step 1604, if a change exceeding the threshold is detected, the process makes a determination as to whether the customers were viewing an item, a marketing message, product display, sign, or some other identifiable thing when the change in biometric readings occurred (step 1606). If the customer was not viewing an item, a marketing message, or some other identifiable person, place, or thing, the process terminates thereafter.

Returning to step 1606, if the customer was viewing an item, marketing message, or something else identifiable, the process associates the change in biometric reading with the item, the marketing message, product display, sign, or the identifiable thing to form the biometric data (step 1608). The process transmits the biometric data to an analysis server and/or stores the biometric data in a data storage device for later use in generating customized marketing messages in the future (step 1610) with the process terminating thereafter.

FIG. 17 is a flowchart illustrating a process for implementing a marketing strategy to improve upsales and cross-sales of items in accordance with an illustrative embodiment. The process is implemented by software in a data processing system, such as data processing system 300 in FIG. 3. The process may also be implemented by a human user.

The process begins by receiving an optimized marketing model (step 1702). The optimized marketing model includes one or more marketing strategies. The process identifies a placement of a set of items using the optimized marketing model (step 1704). The process identifies a placement of a set of display devices using the optimized marketing model (step 1706). The process dynamically adjusts a set of environmental settings, such as, but not limited to, temperature, humidity, and lighting, using the optimized marketing model such that environmental settings are adjusted in accordance with environments settings suggested by the optimized marketing model (step 1708) with the process terminating thereafter.

Thus, the illustrative embodiments provide a computer implemented method, apparatus, and computer program product for generating an optimized marketing strategy for improving sales. In one embodiment, the process identifies an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item. The process identifies at least one item in the plurality of items that is related to the selected item to form a set of related items.

The process parses event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers. The event data comprises metadata describing events associated with the plurality of customers and the plurality of items. The process parses the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers. The process identifies events in the patterns of events that result in a purchase of at least one item in the set of related items by the customers to form optimized events. The purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue. The process then generates a marketing strategy using the optimized events. The marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.

The flowcharts and block diagrams in the different depicted embodiments illustrate the architecture, functionality, and operation of some possible implementations of apparatus, methods and computer program products. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of computer usable or readable program code, which comprises one or more executable instructions for implementing the specified function or functions. In some alternative implementations, the function or functions noted in the block may occur out of the order noted in the figures. For example, in some cases, two blocks shown in succession may be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.

The invention can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements. In a preferred embodiment, the invention is implemented in software, which includes but is not limited to firmware, resident software, microcode, etc.

Furthermore, the invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer readable medium can be any tangible apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.

The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W) and DVD.

Further, a computer storage medium may contain or store a computer readable program code such that when the computer readable program code is executed on a computer, the execution of this computer readable program code causes the computer to transmit another computer readable program code over a communications link. This communications link may use a medium that is, for example without limitation, physical or wireless.

A data processing system suitable for storing and/or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution.

Input/output or I/O devices (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers.

Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modem and Ethernet cards are just a few of the currently available types of network adapters.

The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated. 

What is claimed is:
 1. A computer implemented method for generating an optimized marketing strategy for improving sales, the computer implemented method comprising: identifying an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item; identifying at least one item in the plurality of items selected for purchase by each customer in the plurality of customers that is related to the selected item to form a set of related items; parsing event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers, wherein the event data comprises metadata describing events associated with the plurality of customers and the plurality of items; parsing the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers; identifying, by a processing unit, events in the patterns of events associated with the selection of the selected item and in the patterns of events associated with the selection of the at least one item in the set of related items, wherein the events result in a purchase of at least one item in the set of related items by the customers to form optimized events, and wherein the purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue; and generating a marketing strategy using the optimized events, wherein the marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.
 2. The computer implemented method of claim 1 wherein at least one item in the set of related items is an upsale item, wherein the upsale item provides a same basic functionality as the selected item, wherein a sale of the upsale item to the customers produces a greater amount of revenue or a greater amount of profit than a sale of the selected item, and further comprising: prompting the customers, by the marketing strategy, to purchase the upsale item instead of the selected item.
 3. The computer implemented method of claim 2 wherein the upsale item comprises at least one of a different size than a size of the selected item, a different brand than a brand of the selected item, a different number of constituent parts than a number of constituent parts of the selected item, a different price than a price of the selected item, a different packaging than a packaging of the selected item, and an additional feature that is not provided by the selected item.
 4. The computer implemented method of claim 1 wherein at least one item in the set of related items is a correlated item, wherein the correlated item provides a different basic functionality than the selected item, and further comprising: prompting the customers, by the marketing strategy, to purchase the correlated item in addition to a purchase of the selected item.
 5. The computer implemented method of claim 1 further comprising: identifying the plurality of items and the plurality of customers; analyzing the plurality of items using a set of correlation analysis techniques to identify different items that are purchased in correlation with one or more other items in the plurality of items to form the set of related items.
 6. The computer implemented method of claim 1 further comprising: identifying customers in the plurality of customers; analyzing customer profiles for the plurality of customers to identify types of customers in the plurality of customers; associating types of customers with a purchase of each item in the set of related items; and identifying the events in the patterns of events that result in the purchase of the at least one item in the set of related items by the types of customers to form optimized events, wherein the optimized events are events associated with increasing sales of items in the set of related items by a particular type of customer.
 7. The computer implemented method of claim 6 wherein the type of customers comprises at least one of an age range, an occupation type, an income bracket, a family size, an education level, a number of children, a marital status, an average amount of money spent during each transaction at the retail facility, and a demographic group.
 8. The computer implemented method of claim 1 further comprising: receiving biometric data for a set of customers in the plurality of customers from a set of biometric detection devices associated with the retail facility; and analyzing the biometric data with the event data to generate the marketing strategy.
 9. The computer implemented method of claim 8 further comprising: detecting a change in biometric readings associated with the set of customers that exceeds a threshold change; and responsive to a determination that the customers were viewing the selected item, an item in the set of related items, a display, or a marketing message when the change in the biometric readings occurred, associating the change in the biometric readings with the selected item, the item in the set of related items, or the marketing message to form the biometric data.
 10. The computer implemented method of claim 1 wherein the optimized marketing strategy specifies a placement of a display device, and further comprising: displaying a marketing message for the at least one item in the set of related items on the display device, wherein the marketing message includes a location of the at least one item in the retail facility.
 11. The computer implemented method of claim 1 further comprising: identifying, by the optimized marketing strategy, a set of locations in the retail facility for placement of items in the set of related items, wherein the set of locations are optimized locations to increase a probability that a customer will purchase the at least one item in the set of related items.
 12. The computer implemented method of claim 1 further comprising: receiving video data in a continuous stream from a set of cameras associated with the retail facility; and analyzing the video data, by a smart analysis engine, to form the event data, wherein analyzing the video data comprises generating the metadata describing the events.
 13. The computer implemented method of claim 12 wherein analyzing the video data further comprises: receiving detection data from a set of detectors located outside the retail facility; analyzing the detection data to form external data; and processing the external data with the video data to form the event data.
 14. A computer program product comprising: a computer usable storage device having computer usable program code embodied therewith for generating an optimized marketing strategy for improving sales, the computer usable program code comprising: computer usable program code for identifying an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item; computer usable program code for identifying at least one item in the plurality of items selected for purchase by each customer in the plurality of customers that is related to the selected item to form a set of related items; computer usable program code for parsing event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers, wherein the event data comprises metadata describing events associated with the plurality of customers and the plurality of items; computer usable program code for parsing the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers; computer usable program code for identifying events in the patterns of events associated with the selection of the selected item and in the patterns of events associated with the selection of the at least one item in the set of related items, wherein the events result in a purchase of at least one item in the set of related items by the customers to form optimized events, and wherein the purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue; and computer usable program code for generating a marketing strategy using the optimized events, wherein the marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.
 15. The computer program product of claim 14 wherein at least one item in the set of related items is an upsale item, wherein the upsale item provides a same basic functionality as the selected item, wherein a sale of the upsale item to the customers produces a greater amount of revenue or a greater amount of profit than a sale of the selected item, and further comprising: computer usable program code for prompting the customers, by the marketing strategy, to purchase the upsale item instead of the selected item.
 16. The computer program product of claim 14 wherein at least one item in the set of related items is a correlated item, wherein the correlated item provides a different basic functionality than the selected item, and further comprising: computer usable program code for prompting the customers, by the marketing strategy, to purchase the correlated item in addition to a purchase of the selected item.
 17. The computer program product of claim 14 further comprising: computer usable program code for identifying the plurality of items and the plurality of customers; analyzing the plurality of items using a set of correlation analysis techniques to identify different items that are purchased in correlation with one or more other items in the plurality of items to form the set of related items.
 18. The computer program product of claim 14 further comprising: computer usable program code for receiving biometric data for a set of customers in the plurality of customers from a set of biometric detection devices associated with the retail facility; and computer usable program code for analyzing the biometric data with the event data to generate the marketing strategy.
 19. The computer program product of claim 18 further comprising: computer usable program code for detecting a change in biometric readings associated with the set of customers that exceeds a threshold change; and computer usable program code for associating the change in the biometric readings with the selected item, an item in the set of related items, a display, or a marketing message to form the biometric data in response to a determination that the customers were viewing the selected item, the item in the set of related items, the display, or the marketing message when the change in the biometric readings occurred.
 20. The computer program product of claim 14 wherein the optimized marketing strategy specifies a placement of a display device, and further comprising: computer usable program code for identifying, by the optimized marketing strategy, a set of locations in the retail facility for placement of items in the set of related items, wherein the set of locations are locations that will increase a probability that a customer will purchase the at least one item in the set of related items.
 21. A data processing system for generating an optimized marketing strategy for improving sales, the data processing system comprising: a bus system; a communications system connected to the bus system; a memory connected to the bus system, wherein the memory includes computer usable program code; and a processing unit connected to the bus system, wherein the processing unit executes the computer usable program code to identify an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item; identify at least one item in the plurality of items selected for purchase by each customer in the plurality of customers that is related to the selected item to form a set of related items; parse event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers, wherein the event data comprises metadata describing events associated with the plurality of customers and the plurality of items; parse the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers; identify events in the patterns of events associated with the selection of the selected item and in the patterns of events associated with the selection of the at least one item in the set of related items, wherein the events that result in a purchase of at least one item in the set of related items by the customers to form optimized events, and wherein the purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue; and generate a marketing strategy using the optimized events, wherein the marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.
 22. A system for generating an optimized marketing strategy for improving sales, the system comprising: an analysis server, wherein the analysis server identifies an item in a plurality of items selected for purchase by each customer in a plurality of customers associated with a retail facility to form a selected item and parses event data associated with the plurality of customers to identify patterns of events associated with a selection of the selected item by each customer in the plurality of customers, wherein the event data comprises metadata describing events associated with the plurality of customers and the plurality of items, wherein the analysis server further comprises: a correlation engine, wherein the correlation engine identifies at least one item in the plurality of items selected for purchase by each customer in the plurality of customers that is related to the selected item to form a set of related items, wherein the analysis server further parses the event data associated with the plurality of customers to identify patterns of events associated with a selection of at least one item in the set of related items by customers in the plurality of customers; and a unifying data model, wherein the patterns of events are processes in the unifying data model to identify events in the patterns of events associated with the selection of the selected item and in the patterns of events associated with the selection of the at least one item in the set of related items, wherein the events that result in a purchase of at least one item in the set of related items by the customers to form optimized events, and wherein the purchase of the at least one item in the set of related items by the customers results in an increase in profit or an increase in revenue and generates a marketing strategy using the optimized events, and wherein the marketing strategy comprises a set of strategies for increasing purchases of items in the set of related items by the customers.
 23. The system of claim 22 further comprising: a set of biometric detection devices associated with the retail facility, wherein the biometric detection devices capture biometric data for a set of customers in the plurality of customers and wherein the analysis server analyzes the biometric data with the event data to generate the marketing strategy.
 24. The system of claim 22 further comprising: a smart detection engine, wherein the smart detection engine receives a continuous video stream from a set of cameras associated with the retail facility and analyzes the video stream to generate the event data.
 25. The system of claim 22 further comprising: a device for dispersing an odor-producing chemical into an area of the retail facility, wherein the odor-producing chemical is at least one of a naturally occurring chemical or an artificially created chemical, and wherein the optimized marketing strategy comprises an identification of a type of odor-producing chemical and a location for dispersing the odor-producing chemical into the area of the retail facility, wherein the odor producing chemical increases a probability the customers will purchase the at least one item in the set of items. 